Networking of computing devices is known. Examples of such data networks include local area networks (LANS), wide area networks (WANS), global networks (Internet), the networking of telecommunications devices (i.e., cellular networks, PCS networks, wireline telephony networks), and the like. Many of these networks comprise a variety of client computers with disparate processor architectures and Operating Systems (OS) that rely on architecture dependent versions of standardized network communication protocols such as, for example the well-known Transmission Control Protocol/Internet Protocol (TCP/IP), Internetwork Packet exchange (IPX), User Datagram Protocol/Internet Protocol (UDP/IP), or other suitable networking protocols (cumulatively referred to as the Internet communication suite) to enable these otherwise disparate computing architectures to interact with one another.
Producers and consumers of computing devices and, more particularly, networks of computing devices have begun to quantify the costs associated with the purchase and on-going maintenance of these systems and networks. One generalization drawn from such study is that the initial cost of purchasing a computing device and its associated application software is often relatively small compared to the cost of maintaining such systems and networks. That is to say, the cost of system management, lost productivity due to computer/network downtime and the like are significantly higher than the initial cost of purchasing the hardware and software elements comprising the network.
Accordingly, it is not surprising that managers of data networks (e.g., information technology (IT) departments, etc.) are placing more pressure on the manufacturers of computing devices to improve the manageability of such computing devices in an effort to drive down the cost associated with the management and maintenance associated with computing and networking devices, i.e., to reduce the total cost of ownership (TCO) associated with the maintenance of the devices and the networks. Manageability, in this instance, is the ability to remotely control and manage at least a subset of the hardware functions of a remote computing device (e.g., a client computer).
In this regard, a number of network management tools have been introduced. Typically, such conventional network management tools enable IT personnel to monitor the state of a remote computing device. In certain instances, the conventional network management tools facilitate remote diagnostics of certain failure modes of a computing device. While the introduction of such conventional tools has served to improve the general state of network management, fundamental limitations in their effectiveness remain.
An example of one such inherent limitation in conventional management tools is the fact that they rely on an operational operating system (OS) at the remote computing device. That is, many of such conventional management tools require an operating client-side application, executing atop the OS of the computing device. If the OS hangs so, too, does the ability to access and utilize the resources of the client-side component of the conventional network management tool.
Another limitation often associated with such conventional network management tools is the lack of a secure communications interface between the monitoring and monitored computing devices. That is, conventional management tools often merely rely on the security measures associated with the operating system to ensure the secure nature of the network management communications. At the network level (e.g., of the well-known Open Systems Interconnect (OSI) communication model), many operating systems utilize the Secured Internet Protocol (IPSec) developed within the Internet Engineering Task Force (IETF) (i.e., IETF Request for Comment (RFC) 2401 Security Architecture for the Internet Protocol (1998)), which embeds security information in each communication packet.
One element of the IPSec security information is an anti-replay value, often implemented as a sequence number of a packet within a communication stream, to repel replay attacks on the secure communication by a third-party. As a packet sequence number, the anti-replay value changes on a per-packet basis. Conventional implementations often require each of the communicating entities to continuously store updated version(s) of the anti-replay value upon receipt of each packet. The updated sequence value is often stored on a hard-drive of the client and, in this regard, typically requires an functional operating system in order to access the last sequence number and recover from the initialization event. Those skilled in the art will appreciate, however, that a functional operating system is not always available after such an initialization event.